Apache ANT একটি powerful build automation tool যা সাধারণত Java প্রজেক্টগুলির জন্য ব্যবহৃত হয়। এটি XML ভিত্তিক ফাইল (build.xml) ব্যবহার করে বিল্ড কনফিগারেশন সংজ্ঞায়িত করে। ANT-এর মধ্যে তিনটি গুরুত্বপূর্ণ উপাদান রয়েছে, যা হল Project, Target, এবং Task। এই তিনটি উপাদান একসাথে কাজ করে build প্রক্রিয়া নির্ধারণে এবং কাস্টমাইজ করতে সাহায্য করে।
Project হল ANT-এর মূল উপাদান যা build ফাইলের মধ্যে সমস্ত টার্গেট ও টাস্ককে ধারণ করে। এটি একটি container যা টার্গেটের মধ্যে নির্দিষ্ট বিল্ড প্রক্রিয়া নির্দেশ করে।
<project name="MyProject" default="compile" basedir=".">
<!-- Project specific configurations go here -->
</project>
name
: প্রজেক্টের নাম।default
: ডিফল্ট টার্গেট, যা কোনো টার্গেট উল্লেখ না করলে চলবে।basedir
: প্রজেক্টের মূল ডিরেক্টরি। এটি সাধারণত প্রজেক্টের মূল ফোল্ডার নির্দেশ করে।Target হল একটি নির্দিষ্ট বিল্ড ধাপ বা কাজ, যা কার্যকর করতে হয়। প্রতিটি টার্গেটের মধ্যে এক বা একাধিক task থাকতে পারে। টার্গেটের মধ্যে নির্দেশিত কাজগুলি সম্পাদিত হবে।
compile
, clean
, test
ইত্যাদি।<target name="compile" depends="clean">
<javac srcdir="src" destdir="build"/>
</target>
<target name="clean">
<delete dir="build"/>
</target>
name
: টার্গেটের নাম যা আপনি কমান্ড লাইনে নির্দিষ্ট করে দিতে পারেন।depends
: নির্দিষ্ট করে যে টার্গেটটি অন্য কোনো টার্গেটের উপর নির্ভরশীল।Task হল একটি কাজ যা target এর মধ্যে কার্যকর করা হয়। এটি একটি নির্দিষ্ট কর্ম বা প্রক্রিয়া, যেমন ফাইল কপি করা, কম্পাইল করা, বা একটি জাভা ক্লাস তৈরি করা। ANT-এ built-in অনেক ধরনের task রয়েছে এবং আপনি আপনার প্রয়োজন অনুযায়ী কাস্টম টাস্কও তৈরি করতে পারেন।
<javac>
: জাভা সোর্স কোড কম্পাইল করা।<copy>
: ফাইল কপি করা।<delete>
: ফাইল বা ডিরেক্টরি মুছে ফেলা।<mkdir>
: ডিরেক্টরি তৈরি করা।<target name="compile">
<javac srcdir="src" destdir="build"/>
</target>
<target name="copy-files">
<copy file="source.txt" tofile="destination.txt"/>
</target>
src
, dest
, file
, tofile
ইত্যাদি।<project name="MyProject" default="build" basedir=".">
<!-- Clean Target -->
<target name="clean">
<delete dir="build"/>
</target>
<!-- Compile Target -->
<target name="compile" depends="clean">
<javac srcdir="src" destdir="build"/>
</target>
<!-- Build Target (default) -->
<target name="build" depends="compile">
<echo message="Build complete!"/>
</target>
</project>
ব্যাখ্যা:
build
ডিরেক্টরি মুছে ফেলে।clean
টার্গেটের পরে চালানো হয় এবং সোর্স কোড কম্পাইল করে।compile
টার্গেটের পরে চলে এবং বিল্ড সম্পন্ন হওয়ার পর একটি বার্তা প্রিন্ট করে।এগুলি একসাথে একটি পূর্ণাঙ্গ বিল্ড প্রক্রিয়া তৈরি করতে ব্যবহৃত হয় এবং ANT এর মধ্যে বিল্ড কনফিগারেশন খুবই শক্তিশালী এবং কাস্টমাইজযোগ্য।
common.read_more